<?php declare(strict_types=1);


namespace App\Model\Entity;

use Swoft\Db\Annotation\Mapping\Column;
use Swoft\Db\Annotation\Mapping\Entity;
use Swoft\Db\Annotation\Mapping\Id;
use Swoft\Db\Eloquent\Model;


/**
 * 用户商户关联表
 * Class MemberMerchants
 *
 * @since 2.0
 *
 * @Entity(table="member_merchants")
 */
class MemberMerchants extends Model
{
    /**
     * 用户id
     * @Id(incrementing=false)
     * @Column(name="member_id", prop="memberId")
     *
     * @var int
     */
    private $memberId;

    /**
     * 商户id
     *
     * @Column(name="merchants_id", prop="merchantsId")
     *
     * @var int
     */
    private $merchantsId;

    /**
     * 是否boss 1:是boss 2:非boss
     *
     * @Column(name="is_boss", prop="isBoss")
     *
     * @var int|null
     */
    private $isBoss;

    /**
     * 关联状态 1:关联 2:解绑
     *
     * @Column()
     *
     * @var int|null
     */
    private $status;

    /**
     * 状态  2:brand 3:shop
     *
     * @Column()
     *
     * @var int|null
     */
    private $type;

    /**
     * 创建时间
     *
     * @Column(name="created_at", prop="createdAt")
     *
     * @var int|null
     */
    private $createdAt;

    /**
     * 修改时间
     *
     * @Column(name="updated_at", prop="updatedAt")
     *
     * @var int|null
     */
    private $updatedAt;


    /**
     * @param int $memberId
     *
     * @return void
     */
    public function setMemberId(int $memberId): void
    {
        $this->memberId = $memberId;
    }

    /**
     * @param int $merchantsId
     *
     * @return void
     */
    public function setMerchantsId(int $merchantsId): void
    {
        $this->merchantsId = $merchantsId;
    }

    /**
     * @param int|null $isBoss
     *
     * @return void
     */
    public function setIsBoss(?int $isBoss): void
    {
        $this->isBoss = $isBoss;
    }

    /**
     * @param int|null $status
     *
     * @return void
     */
    public function setStatus(?int $status): void
    {
        $this->status = $status;
    }

    /**
     * @param int|null $type
     *
     * @return void
     */
    public function setType(?int $type): void
    {
        $this->type = $type;
    }

    /**
     * @param int|null $createdAt
     *
     * @return void
     */
    public function setCreatedAt(?int $createdAt): void
    {
        $this->createdAt = $createdAt;
    }

    /**
     * @param int|null $updatedAt
     *
     * @return void
     */
    public function setUpdatedAt(?int $updatedAt): void
    {
        $this->updatedAt = $updatedAt;
    }

    /**
     * @return int
     */
    public function getMemberId(): ?int
    {
        return $this->memberId;
    }

    /**
     * @return int
     */
    public function getMerchantsId(): ?int
    {
        return $this->merchantsId;
    }

    /**
     * @return int|null
     */
    public function getIsBoss(): ?int
    {
        return $this->isBoss;
    }

    /**
     * @return int|null
     */
    public function getStatus(): ?int
    {
        return $this->status;
    }

    /**
     * @return int|null
     */
    public function getType(): ?int
    {
        return $this->type;
    }

    /**
     * @return int|null
     */
    public function getCreatedAt(): ?int
    {
        return $this->createdAt;
    }

    /**
     * @return int|null
     */
    public function getUpdatedAt(): ?int
    {
        return $this->updatedAt;
    }

}
